c语言高手快来帮帮忙```急“进制转换”
来源:百度知道 编辑:UC知道 时间:2024/09/28 10:13:04
输入一个十进制数``将其转换成2,8,16 进制的数````
谢谢`快 急用```不要用什么变态的转换函数``全用基本的C语言学哈
不用itoa函数``另写子程序解决
我不要在百度里面搜的啊`````哪个我也看了的``没用 要简单点的`这个太麻烦 呵呵 我花了两个小时居然写出来了 哈哈``
#include<stdio.h>
main()
{int num,i=0,a[10],r_gitil,j,n;
printf("input one digital:");
scanf("%d",&num);
printf("zhuan huan de jin zhi you 2,8,16\n");
scanf("%d",&n);
while(num!=0)
{
i++;
r_gitil=num%n;
for(j=i-1;j<i;j++)
{
a[j]=r_gitil;
}
num=num/n;
}
printf("zhuanhuan sixteen:");
for(j=i-1;j>=0;j--)
{
switch(a[j])
{
case 10: a[j]='A';printf("%c",a[j]);break;
case 11: a[j]='B';printf("%c",a[j]);break;
case 12: a[j]='C';printf("%c",a[j]);break;
case 13: a[j]='D';printf("%c",a[j]);break;
case 14: a[j]='E';printf("%c",a[j]);break;
case
谢谢`快 急用```不要用什么变态的转换函数``全用基本的C语言学哈
不用itoa函数``另写子程序解决
我不要在百度里面搜的啊`````哪个我也看了的``没用 要简单点的`这个太麻烦 呵呵 我花了两个小时居然写出来了 哈哈``
#include<stdio.h>
main()
{int num,i=0,a[10],r_gitil,j,n;
printf("input one digital:");
scanf("%d",&num);
printf("zhuan huan de jin zhi you 2,8,16\n");
scanf("%d",&n);
while(num!=0)
{
i++;
r_gitil=num%n;
for(j=i-1;j<i;j++)
{
a[j]=r_gitil;
}
num=num/n;
}
printf("zhuanhuan sixteen:");
for(j=i-1;j>=0;j--)
{
switch(a[j])
{
case 10: a[j]='A';printf("%c",a[j]);break;
case 11: a[j]='B';printf("%c",a[j]);break;
case 12: a[j]='C';printf("%c",a[j]);break;
case 13: a[j]='D';printf("%c",a[j]);break;
case 14: a[j]='E';printf("%c",a[j]);break;
case
//十进制转任何进制数。
#include "stdio.h"
#include "math.h"
#define MAXLEN 100
unsigned int check(char *s,unsigned int m);
void strtonum(char* str,unsigned int *p,unsigned int m);
unsigned long mto10(int *p,unsigned int mlen,unsigned int m);
void tenton(unsigned long l10,int *p,int n,unsigned int nlen);
void main()
{
unsigned int m,n,mlen,nlen;
char snumber[MAXLEN];
unsigned int* p;
unsigned long l10;/*l10为m进制转为n进制时作为中转的十进制数*/
int i;
printf("万能进制转换程序。请输入欲转换的数:\n");
gets(snumber);/*将输入的m进制数作为一个字符串接收*/
printf("m进制转为n进制,请输入m和n:\n");
printf("m=");scanf("%u",&m);
printf("n=");scanf("%u",&n);
if(m<2||n<2){printf("非法输入!");exit(0);}
mlen=check(snumber,m);